<html>
	
	<head>
	<link rel="stylesheet" type="text/css" href="../doc.css" />
	<style type="text/css">
.auto-style1 {
	text-decoration: underline;
}
	.auto-style2 {
		border-style: solid;
		border-width: 1px;
	}
	.auto-style3 {
		border-style: solid;
		border-width: 1px;
	}
	</style>
	</head>

	<body>
		<h1 class="auto-style1">DED: Assembler Package</h1>
		<table style="width: 100%" class="auto-style2">
			<tr>
				<td style="width: 109px" class="auto-style3"><strong>Module</strong></td>
				<td class="auto-style3"><strong>Elements</strong></td>
			</tr>
			<tr>
				<td style="width: 109px" class="auto-style3">(General)</td>
				<td class="auto-style3">
				<table style="width: 100%">
					<tr>
				<td style="width: 100px"><strong>Method</strong></td>
				<td style="width: 113px"><strong>Variable Name</strong></td>
				<td style="width: 143px"><strong>Data Type</strong></td>
				<td style="width: 107px"><strong>Access Level</strong></td>
				<td style="width: 107px"><strong>Range</strong></td>
				<td><strong>Purpose</strong></td>
					</tr>
					<tr>
				<td style="width: 77px">n/a</td>
				<td style="width: 113px">ex</td>
				<td style="width: 150px">Exception</td>
				<td style="width: 107px">local</td>
				<td style="width: 107px">n/a/</td>
				<td>General Exception variable used in multiple variables when 
				catching exceptions.</td>
					</tr>
					<tr>
				<td style="width: 77px">n/a</td>
				<td style="width: 113px">i</td>
				<td style="width: 150px">int</td>
				<td style="width: 107px">local</td>
				<td style="width: 107px">n/a</td>
				<td>General loop variable used in multiple classes.</td>
					</tr>
					</table>
				</td>
			</tr>
			<tr>
				<td style="width: 109px" class="auto-style3">AssemblerMain</td>
				<td class="auto-style3">
				<table style="width: 100%">
					<tr>
				<td style="width: 100px"><strong>Method</strong></td>
				<td style="width: 113px"><strong>Variable Name</strong></td>
				<td style="width: 143px"><strong>Data Type</strong></td>
				<td style="width: 107px"><strong>Access Level</strong></td>
				<td style="width: 107px"><strong>Range</strong></td>
				<td><strong>Purpose</strong></td>
					</tr>
					<tr>
				<td style="width: 77px">main</td>
				<td style="width: 113px">args</td>
				<td style="width: 150px">String[]</td>
				<td style="width: 107px">local</td>
				<td style="width: 107px">array length 2</td>
				<td>Arguments passed into the program. First argument should be 
				a file name.</td>
					</tr>
					<tr>
				<td style="width: 77px">main</td>
				<td style="width: 113px">passOne</td>
				<td style="width: 150px">AssemblerPassOne</td>
				<td style="width: 107px">local</td>
				<td style="width: 107px">n/a</td>
				<td>Primary variable to parse the code file initially.</td>
					</tr>
					<tr>
				<td style="width: 77px">main</td>
				<td style="width: 113px">passTwo</td>
				<td style="width: 150px">AssemblerPassTwo</td>
				<td style="width: 107px">local</td>
				<td style="width: 107px">n/a</td>
				<td>Variable used to parse intermediate version and finalize object file.</td>
					</tr>
					<tr>
				<td style="width: 77px">main</td>
				<td style="width: 113px">filename</td>
				<td style="width: 150px">String</td>
				<td style="width: 107px">local</td>
				<td style="width: 107px">n/a</td>
				<td>File path of output(object) file.</td>
					</tr>
				</table>
				</td>
			</tr>
			<tr>
				<td style="width: 109px" class="auto-style3">AssemblerPassOne</td>
				<td class="auto-style3">
				<table style="width: 100%">
					<tr>
				<td style="width: 100px"><strong>Method</strong></td>
				<td style="width: 113px"><strong>Variable Name</strong></td>
				<td style="width: 150px"><strong>Data Type</strong></td>
				<td style="width: 107px"><strong>Access Level</strong></td>
				<td style="width: 107px"><strong>Range</strong></td>
				<td><strong>Purpose</strong></td>
					</tr>
					<tr>
				<td style="width: 77px">n/a</td>
				<td style="width: 113px">Data</td>
				<td style="width: 111px">List&lt;IntermediateData&gt;</td>
				<td style="width: 107px">private class-level</td>
				<td style="width: 107px">n/a</td>
				<td>List of all IntermediateData needed for each pass.</td>
					</tr>
					<tr>
				<td style="width: 77px">n/a</td>
				<td style="width: 113px">symTable</td>
				<td style="width: 111px">Table</td>
				<td style="width: 107px">private class-level</td>
				<td style="width: 107px">n/a</td>
				<td>Table storing elements in the symbol table.</td>
					</tr>
					<tr>
				<td style="width: 77px; height: 23px">n/a</td>
				<td style="width: 113px; height: 23px">lc</td>
				<td style="width: 111px; height: 23px">int</td>
				<td style="width: 107px; height: 23px">private class-level</td>
				<td style="width: 107px; height: 23px">[0,1023]</td>
				<td style="height: 23px">Keeps track of the program counter.</td>
					</tr>
					<tr>
				<td style="width: 77px; height: 23px">n/a</td>
				<td style="width: 113px; height: 23px">lineNum</td>
				<td style="width: 111px; height: 23px">int</td>
				<td style="width: 107px; height: 23px">private class-level</td>
				<td style="width: 107px; height: 23px">TBD</td>
				<td style="height: 23px">Keeps track of the number of lines in the source code.</td>
					</tr>
					<tr>
				<td style="width: 77px; height: 23px">(Constructor)</td>
				<td style="width: 113px; height: 23px">file</td>
				<td style="width: 111px; height: 23px">String</td>
				<td style="width: 107px; height: 23px">local</td>
				<td style="width: 107px; height: 23px">n/a</td>
				<td style="height: 23px">A file name to be opened containing the 
				code to be parsed.</td>
					</tr>
					<tr>
				<td style="width: 77px; height: 23px">(Constructor)</td>
				<td style="width: 113px; height: 23px">in</td>
				<td style="width: 111px; height: 23px">BufferedReader</td>
				<td style="width: 107px; height: 23px">local</td>
				<td style="width: 107px; height: 23px">n/a</td>
				<td style="height: 23px">A reader class to obtain the data from 
				the file.</td>
					</tr>
					<tr>
				<td style="width: 77px; height: 23px">DisplayData</td>
				<td style="width: 113px; height: 23px">d</td>
				<td style="width: 111px; height: 23px">IntermediateData</td>
				<td style="width: 107px; height: 23px">local</td>
				<td style="width: 107px; height: 23px">n/a</td>
				<td style="height: 23px">Local loop variable.</td>
					</tr>
					<tr>
				<td style="width: 77px; height: 23px">ParseLine</td>
				<td style="width: 113px; height: 23px">line</td>
				<td style="width: 111px; height: 23px">String</td>
				<td style="width: 107px; height: 23px">local</td>
				<td style="width: 107px; height: 23px">n/a</td>
				<td style="height: 23px">The line of source code to be parsed.</td>
					</tr>
					<tr>
				<td style="width: 77px; height: 23px">ParseLine</td>
				<td style="width: 113px; height: 23px">result</td>
				<td style="width: 111px; height: 23px">IntermediateData</td>
				<td style="width: 107px; height: 23px">local</td>
				<td style="width: 107px; height: 23px">n/a</td>
				<td style="height: 23px">A container to be filled out with 
				important infomation reguarding the source line.</td>
					</tr>
					<tr>
				<td style="width: 77px; height: 23px">ParseLine</td>
				<td style="width: 113px; height: 23px">commentIndex</td>
				<td style="width: 111px; height: 23px">int</td>
				<td style="width: 107px; height: 23px">local</td>
				<td style="width: 107px; height: 23px">&gt;=-1</td>
				<td style="height: 23px">The index of the : character, 
				indicating the start of a comment. -1 if there is no comment.</td>
					</tr>
					<tr>
				<td style="width: 77px; height: 23px">ParseLine</td>
				<td style="width: 113px; height: 23px">columns</td>
				<td style="width: 111px; height: 23px">String[]</td>
				<td style="width: 107px; height: 23px">local</td>
				<td style="width: 107px; height: 23px">array length 3</td>
				<td style="height: 23px">An array of strings, where columns[0] 
				is the label, columns[1] is the instruction/directive, and 
				columns[2] is the operands.</td>
					</tr>
					<tr>
				<td style="width: 77px; height: 23px">ParseOperator</td>
				<td style="width: 113px; height: 23px">result</td>
				<td style="width: 111px; height: 23px">IntermediateData</td>
				<td style="width: 107px; height: 23px">local</td>
				<td style="width: 107px; height: 23px">n/a</td>
				<td style="height: 23px">A container to be filled out with 
				important infomation reguarding the source line.</td>
					</tr>
					<tr>
				<td style="width: 77px; height: 23px">ParseOperator</td>
				<td style="width: 113px; height: 23px">columns</td>
				<td style="width: 111px; height: 23px">String[]</td>
				<td style="width: 107px; height: 23px">local</td>
				<td style="width: 107px; height: 23px">array length 3</td>
				<td style="height: 23px">An array of strings, where columns[0] 
				is the label, columns[1] is the instruction/directive, and 
				columns[2] is the operands.</td>
					</tr>
					<tr>
				<td style="width: 77px; height: 23px">ParseOperator</td>
				<td style="width: 113px; height: 23px">operandError</td>
				<td style="width: 111px; height: 23px">String</td>
				<td style="width: 107px; height: 23px">local</td>
				<td style="width: 107px; height: 23px">n/a</td>
				<td style="height: 23px">Contains message if an operand error is found.</td>
					</tr>
					<tr>
				<td style="width: 77px; height: 23px">ParseOperator</td>
				<td style="width: 113px; height: 23px">labelError</td>
				<td style="width: 111px; height: 23px">String</td>
				<td style="width: 107px; height: 23px">local</td>
				<td style="width: 107px; height: 23px">n/a</td>
				<td style="height: 23px">Contains message if a label error is found.</td>
					</tr>
					<tr>
				<td style="width: 77px; height: 23px">ParseOperator</td>
				<td style="width: 113px; height: 23px">operator</td>
				<td style="width: 111px; height: 23px">String</td>
				<td style="width: 107px; height: 23px">local</td>
				<td style="width: 107px; height: 23px">n/a</td>
				<td style="height: 23px">The uppercase string representation of 
				the operator that has been parsed.</td>
					</tr>
					<tr>
				<td style="width: 77px; height: 23px">ParseOperator</td>
				<td style="width: 113px; height: 23px">operand</td>
				<td style="width: 111px; height: 23px">String</td>
				<td style="width: 107px; height: 23px">local</td>
				<td style="width: 107px; height: 23px">n/a</td>
				<td style="height: 23px">The uppercase string representation of 
				the operand that has been parsed.</td>
					</tr>
					<tr>
				<td style="width: 77px; height: 23px">ParseOperator</td>
				<td style="width: 113px; height: 23px">equResult</td>
				<td style="width: 111px; height: 23px">int</td>
				<td style="width: 107px; height: 23px">local</td>
				<td style="width: 107px; height: 23px">n/a</td>
				<td style="height: 23px">Resulting value of the EQU expression.</td>
					</tr>
					<tr>
				<td style="width: 77px; height: 23px">ParseOperator</td>
				<td style="width: 113px; height: 23px">expression</td>
				<td style="width: 111px; height: 23px">String</td>
				<td style="width: 107px; height: 23px">local</td>
				<td style="width: 107px; height: 23px">n/a</td>
				<td style="height: 23px">String form of entire equated expression.</td>
					</tr>
					<tr>
				<td style="width: 77px; height: 23px">ParseOperator</td>
				<td style="width: 113px; height: 23px">stringPart</td>
				<td style="width: 111px; height: 23px">String</td>
				<td style="width: 107px; height: 23px">local</td>
				<td style="width: 107px; height: 23px">n/a</td>
				<td style="height: 23px">String piece of the EQU expression.</td>
					</tr>
					<tr>
				<td style="width: 77px; height: 23px">ParseOperator</td>
				<td style="width: 113px; height: 23px">indexofPlus</td>
				<td style="width: 111px; height: 23px">int</td>
				<td style="width: 107px; height: 23px">local</td>
				<td style="width: 107px; height: 23px">n/a</td>
				<td style="height: 23px">Stores index of a plus sign if found.</td>
					</tr>
					<tr>
				<td style="width: 77px; height: 23px">ParseOperator</td>
				<td style="width: 113px; height: 23px">indexofMinus</td>
				<td style="width: 111px; height: 23px">int</td>
				<td style="width: 107px; height: 23px">local</td>
				<td style="width: 107px; height: 23px">n/a</td>
				<td style="height: 23px">Stores index of a minus sign if found.</td>
					</tr>
					<tr>
				<td style="width: 77px; height: 23px">ParseOperator</td>
				<td style="width: 113px; height: 23px">next</td>
				<td style="width: 111px; height: 23px">int</td>
				<td style="width: 107px; height: 23px">local</td>
				<td style="width: 107px; height: 23px">n/a</td>
				<td style="height: 23px">Used to determine if there is a next item.</td>
					</tr>
					<tr>
				<td style="width: 77px; height: 23px">ParseOperator</td>
				<td style="width: 113px; height: 23px">current</td>
				<td style="width: 111px; height: 23px">int</td>
				<td style="width: 107px; height: 23px">local</td>
				<td style="width: 107px; height: 23px">n/a</td>
				<td style="height: 23px">Current value to be handled.</td>
					</tr>
					<tr>
				<td style="width: 77px; height: 23px">ParseOperator</td>
				<td style="width: 113px; height: 23px">operatorCount</td>
				<td style="width: 111px; height: 23px">int</td>
				<td style="width: 107px; height: 23px">local</td>
				<td style="width: 107px; height: 23px">[0,3]</td>
				<td style="height: 23px">Keeps track of number of operators in expression.</td>
					</tr>
					<tr>
				<td style="width: 77px; height: 23px">ParseOperator</td>
				<td style="width: 113px; height: 23px">temp</td>
				<td style="width: 111px; height: 23px">int</td>
				<td style="width: 107px; height: 23px">local</td>
				<td style="width: 107px; height: 23px">n/a</td>
				<td style="height: 23px">Used to evaluate a piece of the equated expression.</td>
					</tr>
					<tr>
				<td style="width: 85px; height: 23px">CheckOperandError</td>
				<td style="width: 113px; height: 23px">operand</td>
				<td style="width: 111px; height: 23px">String</td>
				<td style="width: 107px; height: 23px">local</td>
				<td style="width: 107px; height: 23px">n/a</td>
				<td style="height: 23px">String form of the parsed operand.</td>
					</tr>
					<tr>
				<td style="width: 85px; height: 23px">CheckOperandError</td>
				<td style="width: 113px; height: 23px">format</td>
				<td style="width: 111px; height: 23px">int</td>
				<td style="width: 107px; height: 23px">local</td>
				<td style="width: 107px; height: 23px">n/a</td>
				<td style="height: 23px">Used to compare the operand's format to valid forms.</td>
					</tr>
					<tr>
				<td style="width: 85px; height: 23px">CheckOperandError</td>
				<td style="width: 113px; height: 23px">errorResult</td>
				<td style="width: 111px; height: 23px">String</td>
				<td style="width: 107px; height: 23px">local</td>
				<td style="width: 107px; height: 23px">n/a</td>
				<td style="height: 23px">Contains error message if an error is found.</td>
					</tr>
					<tr>
				<td style="width: 85px; height: 23px">CheckOperandError</td>
				<td style="width: 113px; height: 23px">properFormat</td>
				<td style="width: 111px; height: 23px">boolean</td>
				<td style="width: 107px; height: 23px">local</td>
				<td style="width: 107px; height: 23px">n/a</td>
				<td style="height: 23px">Used to compare the operand's format to valid forms.</td>
					</tr>
					<tr>
				<td style="width: 85px; height: 23px">EvaluateEQUeLabel</td>
				<td style="width: 113px; height: 23px">label</td>
				<td style="width: 111px; height: 23px">String</td>
				<td style="width: 107px; height: 23px">local</td>
				<td style="width: 107px; height: 23px">n/a</td>
				<td style="height: 23px">Label to be checked by funcitoon.</td>
					</tr>
					<tr>
				<td style="width: 85px; height: 23px">EvaluateEQUeLabel</td>
				<td style="width: 113px; height: 23px">result</td>
				<td style="width: 111px; height: 23px">int</td>
				<td style="width: 107px; height: 23px">local</td>
				<td style="width: 107px; height: 23px">n/a</td>
				<td style="height: 23px">Contains EQU value of the label used.</td>
					</tr>
				</table>
				</td>
			</tr>
			<tr>
				<td style="width: 109px" class="auto-style3">AssemblerPassTwo</td>
				<td class="auto-style3">
				<table style="width: 100%">
					<tr>
				<td style="width: 100px"><strong>Method</strong></td>
				<td style="width: 113px"><strong>Variable Name</strong></td>
				<td style="width: 150px"><strong>Data Type</strong></td>
				<td style="width: 107px"><strong>Access Level</strong></td>
				<td style="width: 107px"><strong>Range</strong></td>
				<td><strong>Purpose</strong></td>
					</tr>
					<tr>
				<td style="width: 77px">n/a</td>
				<td style="width: 113px">Data</td>
				<td style="width: 111px">List&lt;IntermediateData&gt;</td>
				<td style="width: 107px">private class-level</td>
				<td style="width: 107px">n/a</td>
				<td>Collection of data generated in AssemblerPassOne.</td>
					</tr>
					<tr>
				<td style="width: 77px">n/a</td>
				<td style="width: 113px">SymbolTable</td>
				<td style="width: 111px">Table</td>
				<td style="width: 107px">private class-level</td>
				<td style="width: 107px">n/a</td>
				<td>List of symbols found in pass one.</td>
					</tr>
					<tr>
				<td style="width: 77px">n/a</td>
				<td style="width: 113px">ObjFile</td>
				<td style="width: 111px">ObjectFile</td>
				<td style="width: 107px">private class-level</td>
				<td style="width: 107px">n/a</td>
				<td>Object file that is output and used with linker/loader.</td>
					</tr>
					<tr>
				<td style="width: 77px">n/a</td>
				<td style="width: 113px">ProgramName</td>
				<td style="width: 111px">String</td>
				<td style="width: 107px">private class-level</td>
				<td style="width: 107px">n/a</td>
				<td>Name of the program.</td>
					</tr>
					<tr>
				<td style="width: 77px">n/a</td>
				<td style="width: 113px">StartAddress</td>
				<td style="width: 111px">int</td>
				<td style="width: 107px">private class-level</td>
				<td style="width: 107px">n/a</td>
				<td>Start address of the program.</td>
					</tr>
					<tr>
				<td style="width: 77px">(Constructor)</td>
				<td style="width: 113px">data</td>
				<td style="width: 111px">List&lt;IntermediateData&gt;</td>
				<td style="width: 107px">local</td>
				<td style="width: 107px">n/a</td>
				<td>Data created in pass one which is passed to here.</td>
					</tr>
					<tr>
				<td style="width: 77px">(Constructor)</td>
				<td style="width: 113px">symTable</td>
				<td style="width: 111px">Table</td>
				<td style="width: 107px">local</td>
				<td style="width: 107px">n/a</td>
				<td>Symbol table created in pass one which is passed to here.</td>
					</tr>
					<tr>
				<td style="width: 77px">Compute</td>
				<td style="width: 113px">header</td>
				<td style="width: 111px">ObjectFileRecord</td>
				<td style="width: 107px">local</td>
				<td style="width: 107px">n/a</td>
				<td>Header record of the object file. Must start the object file.</td>
					</tr>
					<tr>
				<td style="width: 77px">Compute</td>
				<td style="width: 113px">header</td>
				<td style="width: 111px">ObjectFileRecord</td>
				<td style="width: 107px">local</td>
				<td style="width: 107px">n/a</td>
				<td>Header record of the object file. Must start the object file.</td>
					</tr>
					<tr>
				<td style="width: 77px">Compute</td>
				<td style="width: 113px">end</td>
				<td style="width: 111px">ObjectFileRecord</td>
				<td style="width: 107px">local</td>
				<td style="width: 107px">n/a</td>
				<td>End record of the object file. Must end the object file.</td>
					</tr>
					<tr>
				<td style="width: 77px">Calculate</td>
				<td style="width: 113px">data</td>
				<td style="width: 111px">IntermediateData</td>
				<td style="width: 107px">local</td>
				<td style="width: 107px">n/a</td>
				<td>Individual modified data line that will be codified for the object file.</td>
					</tr>
					<tr>
				<td style="width: 77px">Calculate</td>
				<td style="width: 113px">operand</td>
				<td style="width: 111px">String</td>
				<td style="width: 107px">local</td>
				<td style="width: 107px">n/a</td>
				<td>Operand of the current data line.</td>
					</tr>
					<tr>
				<td style="width: 77px">Calculate</td>
				<td style="width: 113px">opSymbol</td>
				<td style="width: 111px">SymbolRow</td>
				<td style="width: 107px">local</td>
				<td style="width: 107px">n/a</td>
				<td>Used if operand references a symbol in the table.</td>
					</tr>
					<tr>
				<td style="width: 77px">Calculate</td>
				<td style="width: 113px">code</td>
				<td style="width: 111px">String</td>
				<td style="width: 107px">local</td>
				<td style="width: 107px">n/a</td>
				<td>String used to store the binary equivalent of the current instruction.</td>
					</tr>
					<tr>
				<td style="width: 77px">Calculate</td>
				<td style="width: 113px">hexCode</td>
				<td style="width: 111px">int</td>
				<td style="width: 107px">local</td>
				<td style="width: 107px">n/a</td>
				<td>Hexadecimal version of the instruction's encoding.</td>
					</tr>
					<tr>
				<td style="width: 77px">Calculate</td>
				<td style="width: 113px">replace</td>
				<td style="width: 111px">boolean</td>
				<td style="width: 107px">local</td>
				<td style="width: 107px">n/a</td>
				<td>Used to determine whether the instruction should be swapped with its equivalent NOP.</td>
					</tr>
					<tr>
				<td style="width: 77px">Calculate</td>
				<td style="width: 113px">textRecord</td>
				<td style="width: 111px">ObjectFileRecord</td>
				<td style="width: 107px">local</td>
				<td style="width: 107px">n/a</td>
				<td>Used to generate a text record in the object file.</td>
					</tr>
					<tr>
				<td style="width: 77px">Calculate</td>
				<td style="width: 113px">modifyRecord</td>
				<td style="width: 111px">ObjectFileRecord</td>
				<td style="width: 107px">local</td>
				<td style="width: 107px">n/a</td>
				<td>Used to generate a modify record in the object file.</td>
					</tr>
					<tr>
				<td style="width: 77px">Calculate</td>
				<td style="width: 113px">linkingRecord</td>
				<td style="width: 111px">ObjectFileRecord</td>
				<td style="width: 107px">local</td>
				<td style="width: 107px">n/a</td>
				<td>Used to generate a linking record in the object file.</td>
					</tr>
					<tr>
				<td style="width: 77px">Calculate</td>
				<td style="width: 113px">value</td>
				<td style="width: 111px">int</td>
				<td style="width: 107px">local</td>
				<td style="width: 107px">n/a</td>
				<td>Value of the literal used in the operand field of the current directive.</td>
					</tr>
					<tr>
				<td style="width: 77px">AddNOP</td>
				<td style="width: 113px">d</td>
				<td style="width: 111px">IntermediateData</td>
				<td style="width: 107px">local</td>
				<td style="width: 107px">n/a</td>
				<td>Line data that will be altered with a NOP.</td>
					</tr>
					<tr>
				<td style="width: 77px">AddDAT0</td>
				<td style="width: 113px">d</td>
				<td style="width: 111px">IntermediateData</td>
				<td style="width: 107px">local</td>
				<td style="width: 107px">n/a</td>
				<td>Line data that will be altered with a DAT version of NOP.</td>
					</tr>
					<tr>
				<td style="width: 77px">PrintReportLine</td>
				<td style="width: 113px">lc</td>
				<td style="width: 111px">int</td>
				<td style="width: 107px">local</td>
				<td style="width: 107px">n/a</td>
				<td>Location counter of the current line.</td>
					</tr>
					<tr>
				<td style="width: 77px">PrintReportLine</td>
				<td style="width: 113px">hex</td>
				<td style="width: 111px">int</td>
				<td style="width: 107px">local</td>
				<td style="width: 107px">n/a</td>
				<td>Hexdecimal encoding of the current line.</td>
					</tr>
					<tr>
				<td style="width: 77px">PrintReportLine</td>

				<td style="width: 113px">absolute</td>
				<td style="width: 111px">String</td>
				<td style="width: 107px">local</td>
				<td style="width: 107px">n/a</td>
				<td>States whether the line is absolute, relocatable, or modify.</td>
					</tr>
					<tr>
				<td style="width: 77px">PrintReportLine</td>
				<td style="width: 113px">lineNum</td>
				<td style="width: 111px">int</td>
				<td style="width: 107px">local</td>
				<td style="width: 107px">n/a</td>
				<td>Line number that the current line resides at.</td>
					</tr>
					<tr>
				<td style="width: 77px">PrintReportLine</td>
				<td style="width: 113px">source</td>
				<td style="width: 111px">String</td>
				<td style="width: 107px">local</td>
				<td style="width: 107px">n/a</td>
				<td>Original source line.</td>
					</tr>
					<tr>
				<td style="width: 77px">PrintReportLineNoHex</td>
				<td style="width: 113px">lc</td>
				<td style="width: 111px">int</td>
				<td style="width: 107px">local</td>
				<td style="width: 107px">n/a</td>
				<td>Location counter of the current line.</td>
					</tr>
					<tr>
				<td style="width: 77px">PrintReportLineNoHex</td>
				<td style="width: 113px">lineNum</td>
				<td style="width: 111px">int</td>
				<td style="width: 107px">local</td>
				<td style="width: 107px">n/a</td>
				<td>Line number that the current line resides at.</td>
					</tr>
					<tr>
				<td style="width: 77px">PrintReportLineNoHex</td>
				<td style="width: 113px">source</td>
				<td style="width: 111px">String</td>
				<td style="width: 107px">local</td>
				<td style="width: 107px">n/a</td>
				<td>Original source line.</td>
					</tr>
					<tr>
				<td style="width: 77px">EvaluateADC</td>
				<td style="width: 113px">list</td>
				<td style="width: 111px">String[]</td>
				<td style="width: 107px">local</td>
				<td style="width: 107px">n/a</td>
				<td>List of operands in the ADC expression.</td>
					</tr>
					<tr>
				<td style="width: 77px">EvaluateADC</td>
				<td style="width: 113px">d</td>
				<td style="width: 111px">IntermediateData</td>
				<td style="width: 107px">local</td>
				<td style="width: 107px">n/a</td>
				<td>Intermediate line data used to help evaluate the ADC expression.</td>
					</tr>
					<tr>
				<td style="width: 77px">EvaluateADC</td>
				<td style="width: 113px">result</td>
				<td style="width: 111px">int</td>
				<td style="width: 107px">local</td>
				<td style="width: 107px">[0,1023]</td>
				<td>Calculated address of the expression.</td>
					</tr>
					<tr>
				<td style="width: 77px">CreateModifyRecords</td>
				<td style="width: 113px">list</td>
				<td style="width: 111px">String[]</td>
				<td style="width: 107px">local</td>
				<td style="width: 107px">n/a</td>
				<td>List of additional modify records that need to be created.</td>
					</tr>
					<tr>
				<td style="width: 77px">CreateModifyRecords</td>
				<td style="width: 113px">d</td>
				<td style="width: 111px">IntermediateData</td>
				<td style="width: 107px">local</td>
				<td style="width: 107px">n/a</td>
				<td>Intermediate line data used to fill out the modify record.</td>
					</tr>
					<tr>
				<td style="width: 77px">CreateModifyRecords</td>
				<td style="width: 113px">value</td>
				<td style="width: 111px">int</td>
				<td style="width: 107px">local</td>
				<td style="width: 107px">n/a</td>
				<td>Value to be converted to hexadecimal and placed inside the modify record.</td>
					</tr>
					<tr>
				<td style="width: 77px">CreateModifyRecords</td>
				<td style="width: 113px">type</td>
				<td style="width: 111px">String</td>
				<td style="width: 107px">local</td>
				<td style="width: 107px">n/a</td>
				<td>Used to determine whether there is a plus or minus sign at the beginning of the line.</td>
					</tr>
					<tr>
				<td style="width: 77px">CreateModifyRecords</td>
				<td style="width: 113px">base</td>
				<td style="width: 111px">String</td>
				<td style="width: 107px">local</td>
				<td style="width: 107px">n/a</td>
				<td>Original label that is being modified.</td>
					</tr>
					<tr>
				<td style="width: 77px">EvaluateADCOperand</td>
				<td style="width: 113px">label</td>
				<td style="width: 111px">String</td>
				<td style="width: 107px">local</td>
				<td style="width: 107px">n/a</td>
				<td>Operand to be evaluated.</td>
					</tr>
					<tr>
				<td style="width: 77px">EvaluateADCOperand</td>
				<td style="width: 113px">d</td>
				<td style="width: 111px">IntermediateData</td>
				<td style="width: 107px">local</td>
				<td style="width: 107px">n/a</td>
				<td>Intermediate line data used to help evaluate the operand.</td>
					</tr>
					<tr>
				<td style="width: 77px">EvaluateADCOperand</td>
				<td style="width: 113px">base</td>
				<td style="width: 111px">String</td>
				<td style="width: 107px">local</td>
				<td style="width: 107px">n/a</td>
				<td>Original label found in the symbol table that is referenced in the expression.</td>
					</tr>
					<tr>
				<td style="width: 77px">GetBaseLabel</td>
				<td style="width: 113px">label</td>
				<td style="width: 111px">String</td>
				<td style="width: 107px">local</td>
				<td style="width: 107px">n/a</td>
				<td>Label to check the symbol table for.</td>
					</tr>
					<tr>
				<td style="width: 77px">EvaluateRLabel</td>
				<td style="width: 113px">label</td>
				<td style="width: 111px">String</td>
				<td style="width: 107px">local</td>
				<td style="width: 107px">n/a</td>
				<td>Label to be checked and validated.</td>
					</tr>
					<tr>
				<td style="width: 77px">EvaluateRLabel</td>
				<td style="width: 113px">d</td>
				<td style="width: 111px">IntermediateData</td>
				<td style="width: 107px">local</td>
				<td style="width: 107px">n/a</td>
				<td>Intermediate line data to assist in evaluating the label.</td>
					</tr>
				</table>
			</tr>
			<tr>
				<td style="width: 109px" class="auto-style3">IntermediateData</td>
				<td class="auto-style3">
				<table style="width: 100%">
					<tr>
				<td style="width: 100px"><strong>Method</strong></td>
				<td style="width: 113px"><strong>Variable Name</strong></td>
				<td style="width: 150px"><strong>Data Type</strong></td>
				<td style="width: 107px"><strong>Access Level</strong></td>
				<td style="width: 107px"><strong>Range</strong></td>
				<td><strong>Purpose</strong></td>
					</tr>
					<tr>
				<td style="width: 77px">n/a</td>
				<td style="width: 113px">Source_Line</td>
				<td style="width: 111px">String</td>
				<td style="width: 107px">public class-level</td>
				<td style="width: 107px">n/a</td>
				<td>String containing a line of source code</td>
					</tr>
					<tr>
				<td style="width: 77px">n/a</td>
				<td style="width: 113px">LC</td>
				<td style="width: 111px">int</td>
				<td style="width: 107px">public class-level</td>
				<td style="width: 107px">[0,1023]</td>
				<td>Value of the program counter</td>
					</tr>
					<tr>
				<td style="width: 77px">n/a</td>
				<td style="width: 113px">Label</td>
				<td style="width: 111px">String</td>
				<td style="width: 107px">public class-level</td>
				<td style="width: 107px">n/a</td>
				<td>If label, this variable is the string that contains the 
				label</td>
					</tr>
					<tr>
				<td style="width: 77px">n/a</td>
				<td style="width: 113px">Operator</td>
				<td style="width: 111px">Operator</td>
				<td style="width: 107px">public class-level</td>
				<td style="width: 107px">n/a</td>
				<td>Stores which operator is being used and op code</td>
					</tr>
					<tr>
				<td style="width: 77px">n/a</td>
				<td style="width: 113px">Function</td>
				<td style="width: 111px">Function</td>
				<td style="width: 107px">public class-level</td>
				<td style="width: 107px">n/a</td>
				<td>Stores which function is being used and op code</td>
					</tr>
					<tr>
				<td style="width: 77px">n/a</td>
				<td style="width: 113px">Directive</td>
				<td style="width: 111px">Directive</td>
				<td style="width: 107px">public class-level</td>
				<td style="width: 107px">n/a</td>
				<td>Stores which directive is being used and revelant 
				information</td>
					</tr>
					<tr>
				<td style="width: 77px">n/a</td>
				<td style="width: 113px">Operands</td>
				<td style="width: 111px">String[]</td>
				<td style="width: 107px">public class-level</td>
				<td style="width: 107px">array length 0-2</td>
				<td>Stores the operand fields of the source line and op code. 
				For Operator instructions, Operands[0] will be the string value 
				of the Function.</td>
					</tr>
					<tr>
				<td style="width: 77px">n/a</td>
				<td style="width: 113px">Comment</td>
				<td style="width: 111px">String</td>
				<td style="width: 107px">public class-level</td>
				<td style="width: 107px">n/a</td>
				<td>Stores the string containing any comments in the source 
				line.</td>
					</tr>
					<tr>
				<td style="width: 77px">n/a</td>
				<td style="width: 113px">Absolute</td>
				<td style="width: 111px">Boolean</td>
				<td style="width: 107px">public class-level</td>
				<td style="width: 107px">T/F</td>
				<td>True if absolute, false if relocatable</td>
					</tr>
					<tr>
				<td style="width: 77px">n/a</td>
				<td style="width: 113px">Type</td>
				<td style="width: 111px">Instruction.Type</td>
				<td style="width: 107px">public class-level</td>
				<td style="width: 107px">Type.Operator, Type.Directive, 
				Type.Error</td>
				<td>Keeps track of the instruction type, either Operator, 
				Directive, or Error</td>
					</tr>
				</table>
				</td>
			</tr>
			<tr>
				<td style="width: 109px" class="auto-style3">ObjectFile</td>
				<td class="auto-style3">
				<table style="width: 100%">
					<tr>
				<td style="width: 100px"><strong>Method</strong></td>
				<td style="width: 113px"><strong>Variable Name</strong></td>
				<td style="width: 143px"><strong>Data Type</strong></td>
				<td style="width: 107px"><strong>Access Level</strong></td>
				<td style="width: 107px"><strong>Range</strong></td>
				<td><strong>Purpose</strong></td>
					</tr>
					<tr>
				<td style="width: 77px">n/a</td>
				<td style="width: 113px">Records</td>
				<td style="width: 111px">List&lt;ObjectFileRecord&gt;</td>
				<td style="width: 107px">public class-level</td>
				<td style="width: 107px">n/a</td>
				<td>List containing records for the object file</td>
					</tr>
					<tr>
				<td style="width: 77px">n/a</td>
				<td style="width: 113px">NumLRecords</td>
				<td style="width: 111px">int</td>
				<td style="width: 107px">public class-level</td>
				<td style="width: 107px">n/a</td>
				<td>Counts how many linking records are in the object file</td>
					</tr>
					<tr>
				<td style="width: 77px">n/a</td>
				<td style="width: 113px">NumTRecords</td>
				<td style="width: 111px">int</td>
				<td style="width: 107px">public class-level</td>
				<td style="width: 107px">n/a</td>
				<td>Counts how many text records are in the object file</td>
					</tr>
					<tr>
				<td style="width: 77px">n/a</td>
				<td style="width: 113px">NumMRecords</td>
				<td style="width: 111px">int</td>
				<td style="width: 107px">public class-level</td>
				<td style="width: 107px">n/a</td>
				<td>Counts how many modify records are in the object file</td>
					</tr>
					<tr>
				<td style="width: 77px">n/a</td>
				<td style="width: 113px">NumRecords</td>
				<td style="width: 111px">int</td>
				<td style="width: 107px">public class-level</td>
				<td style="width: 107px">n/a</td>
				<td>Counts the total number of records in the object file</td>
					</tr>
					<tr>
				<td style="width: 77px">AddRecord</td>
				<td style="width: 113px">type</td>
				<td style="width: 111px">String</td>
				<td style="width: 107px">local</td>
				<td style="width: 107px">n/a</td>
				<td>Describes whether the record is of type Modify, Linking, or Text.</td>
					</tr>
					<tr>
				<td style="width: 77px">AddRecord</td>
				<td style="width: 113px">record</td>
				<td style="width: 111px">ObjectFileRecord</td>
				<td style="width: 107px">local</td>
				<td style="width: 107px">n/a</td>
				<td>Record to be added to object file.</td>
					</tr>
					<tr>
				<td style="width: 77px">PrintToFile</td>
				<td style="width: 113px">out</td>
				<td style="width: 111px">PrintStream</td>
				<td style="width: 107px">local</td>
				<td style="width: 107px">n/a</td>
				<td>Output file stream.</td>
					</tr>
				</table>
				</td>
			</tr>
			<tr>
				<td style="width: 109px" class="auto-style3">SymbolRow</td>
				<td class="auto-style3">
				<table style="width: 100%">
					<tr>
				<td style="width: 100px"><strong>Method</strong></td>
				<td style="width: 113px"><strong>Variable Name</strong></td>
				<td style="width: 143px"><strong>Data Type</strong></td>
				<td style="width: 107px"><strong>Access Level</strong></td>
				<td style="width: 107px"><strong>Range</strong></td>
				<td><strong>Purpose</strong></td>
					</tr>
					<tr>
				<td style="width: 77px">n/a</td>
				<td style="width: 113px">Data</td>
				<td style="width: 111px">IntermediateData</td>
				<td style="width: 107px">public class-level</td>
				<td style="width: 107px">n/a</td>
				<td>Intermediate data to be passed in for each row of the symbol 
				table</td>
					</tr>
					<tr>
				<td style="width: 77px">n/a</td>
				<td style="width: 113px">Relocation</td>
				<td style="width: 111px">String</td>
				<td style="width: 107px">public class-level</td>
				<td style="width: 107px">n/a</td>
				<td>String to display whether the instruction is absolute, 
				relocatable, or modify.</td>
					</tr>
					<tr>
				<td style="width: 77px">n/a</td>
				<td style="width: 113px">Usage</td>
				<td style="width: 111px">String</td>
				<td style="width: 107px">public class-level</td>
				<td style="width: 107px">n/a</td>
				<td>String to describe the what the label labels.</td>
					</tr>
					<tr>
				<td style="width: 77px">n/a</td>
				<td style="width: 113px">EquString</td>
				<td style="width: 111px">String</td>
				<td style="width: 107px">public class-level</td>
				<td style="width: 107px">n/a</td>
				<td>The string value for an EQU directive.</td>
					</tr>
					<tr>
				<td style="width: 77px">n/a</td>
				<td style="width: 113px">LC</td>
				<td style="width: 111px">String</td>
				<td style="width: 107px">public class-level</td>
				<td style="width: 107px">[0, 1023]</td>
				<td>The line count that the label was found at.</td>
					</tr>
					<tr>
				<td style="width: 77px">PrintRow</td>
				<td style="width: 113px">label</td>
				<td style="width: 111px">String</td>
				<td style="width: 107px">local</td>
				<td style="width: 107px">n/a</td>
				<td>Symbol to be found in the table.</td>
					</tr>
				</table>
				</td>
			</tr>
			<tr>
				<td style="width: 109px" class="auto-style3">Table</td>
				<td class="auto-style3">
				<table style="width: 100%">
					<tr>
				<td style="width: 100px"><strong>Method</strong></td>
				<td style="width: 113px"><strong>Variable Name</strong></td>
				<td style="width: 143px"><strong>Data Type</strong></td>
				<td style="width: 107px"><strong>Access Level</strong></td>
				<td style="width: 107px"><strong>Range</strong></td>
				<td><strong>Purpose</strong></td>
					</tr>
					<tr>
				<td style="width: 77px">n/a</td>
				<td style="width: 113px">Rows</td>
				<td style="width: 111px">Map&lt;String, SymbolRow&gt;</td>
				<td style="width: 107px">public class-level</td>
				<td style="width: 107px">n/a</td>
				<td>Map containing the rows of the symbol table</td>
					</tr>
					<tr>
				<td style="width: 77px">PrintTable</td>
				<td style="width: 113px">row</td>
				<td style="width: 111px">SymbolRow</td>
				<td style="width: 107px">local</td>
				<td style="width: 107px">n/a</td>
				<td>Local loop variable.</td>
					</tr>
				</table>
				</td>
			</tr>
			<tr>
				<td style="width: 109px">&nbsp;</td>
				<td>&nbsp;</td>
			</tr>
		</table>
&nbsp;
	</body>
</html>
